package br.com.senac.digipao.servlet;

import br.com.senac.digipao.bean.ContasReceber;
import br.com.senac.digipao.bean.Usuario;
import br.com.senac.digipao.dao.ContasDao;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet(name = "alteraCadastroContasReceberServlet", urlPatterns = {"/alteraCadastroContasReceber"})
public class AlteraCadastroContasReceberServlet extends HttpServlet {

    @Override
    protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");

        String operacao = request.getParameter("operacao");

        if (operacao.equals("Alterar")) {
            ContasReceber contasReceberParaAlterar = (ContasReceber) request.getSession(true).getAttribute("ContasReceberParaAlterar");
            // pegando os parâmetros do request
            
            int idContasReceber = contasReceberParaAlterar.getIdContasReceber();
            String descricaoConta = request.getParameter("descricaoConta");
            String dataCadastro = request.getParameter("dataCadastro");
            String dataVencimento = request.getParameter("dataVencimento");
            String dataRecebimento = request.getParameter("dataRecebimento");

            // monta um objeto ContasReceber
            ContasReceber contasReceber = new ContasReceber();
            contasReceber.setIdContasReceber(idContasReceber);
            contasReceber.setDescricaoConta(descricaoConta);
            contasReceber.setDataCadastro(dataCadastro);
            contasReceber.setDataVencimento(dataVencimento);
            contasReceber.setDataRecebimento(dataRecebimento);

            // salva o cadastro do ContasReceber
            try {
                ContasDao dao = new ContasDao();
                dao.alteraContasReceber(contasReceber);

            } catch (SQLException ex) {
                Logger.getLogger(CadastroContasReceberServlet.class.getName()).log(Level.SEVERE, null, ex);
            }
            request.getSession().removeAttribute("ContasReceberParaAlterar");
            request.getSession().removeAttribute("ListaContasReceber");
            RequestDispatcher rd = request.getRequestDispatcher("/media/jsp/alteradoComSucesso.jsp");
            rd.forward(request, response);

        } else if (operacao.equals("Cancelar")) {
            RequestDispatcher rd = request.getRequestDispatcher("/media/jsp/menuPesquisar.jsp");
            rd.forward(request, response);
        }

    }

}
